31 - Artificial Intelligence I [ID:51178]
50 von 310 angezeigt

So, for people who can't, if the general recording mechanism doesn't work, let me screen share.

There we go.

The DPLL procedure.

We have the algorithm here, but I would rather like to show it to you in the form of an example

first.

So what's happening here?

Sorry.

It hopped.

Right.

So we have a clause set.

This one here.

And we have two rules.

One is called unit propagation, UP.

We see we have a unit clause here, namely, R true.

What we can do with this is essentially just propagate this by getting rid of doing clause

simplification.

We have an R true here, so we can get rid of the R false, because it's never going to

be false.

So I can shorten this, and I can get rid of all the clauses which contain an R true, which

in this case, there aren't any.

So we have P true, Q true.

That's the initial part of this one.

We have P false, Q false left over.

And we have P true and Q false.

That's the last clause here.

We can get rid of the unit and of all and do clause simplification with it.

That gives us a shorter clause set.

So that simplified our system, and we can't do anything because we don't have any units

left over.

So what we do is we have to use a different rule, the so-called splitting rule, which

basically allows, which basically takes a clause and takes a variable.

In this case, we take the P. And on one branch, we set it to false, which gives us a new unit,

which we can then use for simplifying.

If we have a P to false, we can simplify this clause to Q true.

We have a P false or Q false.

With a P false, we can drop this because this is never going to contribute to an empty clause.

And we have the P true, Q false, which we actually simplify to this.

We have two more.

We've created two units in this, and the unit propagation rule actually gives us the empty

clause.

On the other branch, we have a P true, which gives us, after clause simplification, a Q

false.

We can do a unit.

We can do a unit propagation, and actually that makes the clause set empty, which is

different from an empty clause.

An empty clause gives us unsatisfiability.

That's essentially a proof.

And if we have an empty clause set, that actually gives us a satisfying clause.

So we return all the decisions we've made, namely R goes to true, P goes to true, and

Q goes to false.

Teil einer Videoserie :

Zugänglich über

Offener Zugang

Dauer

00:44:06 Min

Aufnahmedatum

2023-12-19

Hochgeladen am

2024-01-15 12:13:15

Sprache

en-US

Einbetten
Wordpress FAU Plugin
iFrame
Teilen